#include <string>
#include <iostream>
#include "groupeAbonne.h"


GroupeAbonne::GroupeAbonne(long max)
{
taille=max;
nb_abn=0;
tab_abn= new Abonne[taille];

}
GroupeAbonne::~GroupeAbonne()
{
delete[] tab_abn;
}
GroupeAbonne::GroupeAbonne(const GroupeAbonne& A)
{
taille=A.taille;
nb_abn=A.nb_abn;
tab_abn= new Abonne[taille];
for(long i=0;i<nb_abn;i++)
{
tab_abn[i]=A.tab_abn[i];
}

}

bool GroupeAbonne::ajouter_Abonne(const Abonne& A)
{
if(nb_abn==taille)
{
return false;
}else{
tab_abn[nb_abn]=A;
nb_abn++;
return true;
}

}
/*void GroupeAbonne::supprimer(int numero)
{
int j;
for(int i=0;i<nb_abn;i++)
{
if(tab_abn[i].getNumero()== numero)
{
for(j=i;j<nb_abn-1;j++)
{
tab_abn[j]=tab_abn[nb_abn];
}

}
}

}*/
void GroupeAbonne::afficher_Abonne()
{

for(int i=0;i<nb_abn;i++)
{
tab_abn[i].afficher();
}

}

GroupeAbonne& GroupeAbonne::operator=(const GroupeAbonne& A)
{
if(this != &A) // this est un pointeur sur l'objet courant
{
delete[] tab_abn;
taille=A.taille;
nb_abn=A.nb_abn;
tab_abn= new Abonne[taille];
for(long i=0;i<nb_abn;i++)
{
tab_abn[i]=A.tab_abn[i];
}
}
return *this; //*this c'est l'objet lui mm
}




